package blancosMikel.controller.servlets;

import java.io.IOException;
import java.util.ArrayList;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import blancosMikel.controller.beans.directorioBeans;
import blancosMikel.controller.beans.informativaBeans;
import blancosMikel.controller.beans.noticiasBeans;
import blancosMikel.model.dao.directorioDAO;
import blancosMikel.model.dao.informativaDAO;
import blancosMikel.model.dao.noticiasDAO;
import blancosMikel.model.dao.saldosDAO;
import blancosMikel.model.dao.usuariosDAO;

/**
 * Servlet implementation class intranet
 */
@WebServlet(description = "paginacionJSP", urlPatterns = { "/intranet" })
public class intranetSVR extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public intranetSVR() {
        super();
        System.out.println("SVR.Intranet----------> Ejecutandose!");
    }
    /**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
	 *      response)
	 */
	protected void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException {
		System.out.println("SVR.usuarios----------> doGet");
		response.sendRedirect("blancosMikel");
	}
	
	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
	 *      response)
	 */
	protected void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException {
		System.out.println("SVR.intranet----------> doPost");
		
		//creando bean
		informativaBeans info = new informativaBeans();
		
		//Creando Dao
		saldosDAO salDao = new saldosDAO();
		usuariosDAO usrDAO = new usuariosDAO();
		noticiasDAO nDAO = new noticiasDAO();
		directorioDAO dDAO = new directorioDAO();
		informativaDAO iDAO = new informativaDAO();
		
		//catalogos
		ArrayList<noticiasBeans> catNoticias = new ArrayList<noticiasBeans>();
		ArrayList<directorioBeans> agenda = new ArrayList<directorioBeans>();
		
		System.out.println("SVR.usuarios.doPost----------> Dao Creado");
		String mapping = null;
		int dispatch = Integer.parseInt(request.getParameter("dispatch"));
		System.out.println("SVR.usuarios.doPost----------> Cargando el disparador");
		
		
		try {
			iDAO.selectInfo(info);
			switch (dispatch) {
			case 1:// JSP INTRANET			
				System.out.println("SVR.INTRANET.doPost.JSPINTRANET----------> Ejecutando Disparador");
				request.setAttribute("infoBean",info);
				mapping = "SEGURIDAD/intranet.jsp";
				System.out.println("SVR.INTRANET.doPost.JSPINTRANET----------> JSP PAGINADO!");
				break;
			case 2:// Usuarios
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Ejecutando Disparador");
				request.setAttribute("mensaje","Catalogo Cargado!");
				request.setAttribute("catUsuario", usrDAO.getCatalogo());
				request.setAttribute("infoBean",info);
				mapping = "SEGURIDAD/usrModulo/usuarios.jsp?id=1";
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Catalogo Cargado!");
				break;
			case 3:// Saldos
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Ejecutando Disparador");
				request.setAttribute("mensaje","Catalogo Cargado!");
				request.setAttribute("catSaldo", salDao.getSaldos());
				request.setAttribute("infoBean",info);
				mapping = "SEGURIDAD/contModulo/contabilidad.jsp?id=1";
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Catalogo Cargado!");
				break;
			case 4:// Productos
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Ejecutando Disparador");
				request.setAttribute("infoBean",info);
				mapping = "SEGURIDAD/prodModulo/productos.jsp";
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Catalogo Cargado!");
				break;
			case 5:// Inventario
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Ejecutando Disparador");
				request.setAttribute("infoBean",info);
				mapping = "SEGURIDAD/contModulo/inveModulo/inventario.jsp";
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Catalogo Cargado!");
				break;
			case 6:// Ventas
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Ejecutando Disparador");
				request.setAttribute("infoBean",info);
				mapping = "SEGURIDAD/contModulo/ventModulo/ventas.jsp";
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Catalogo Cargado!");
				break;
			case 7:// Compras
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Ejecutando Disparador");
				request.setAttribute("infoBean",info);
				mapping = "SEGURIDAD/compModulo/compras.jsp";
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Catalogo Cargado!");
				break;
			case 8:// Muestreo de apartados
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Ejecutando Disparador");
				request.setAttribute("infoBean",info);
				mapping = "SEGURIDAD/aparModulo/apartados.jsp";
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Catalogo Cargado!");
				break;
			case 9:// Sistema
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Ejecutando Disparador");
				agenda = dDAO.loadPhones();
				catNoticias = nDAO.selectNoticias();
				request.setAttribute("infoBean",info);
				request.setAttribute("catNoticias",catNoticias);
				request.setAttribute("agenda", agenda);
				mapping = "SEGURIDAD/sistema/sistema.jsp";
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Catalogo Cargado!");
				break;
			case 10:// catProductos clientes
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Ejecutando Disparador");
				request.setAttribute("infoBean",info);
				mapping = "SEGURIDAD/prodModulo/catalogo.jsp";
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Catalogo Cargado!");
				break;
			case 11:// Carrito de compras VentasModulo
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Ejecutando Disparador");
				request.setAttribute("infoBean",info);
				mapping = "SEGURIDAD/ventModulo/carrito.jsp";
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Catalogo Cargado!");
				break;
			case 12:// Sistema de apartado
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Ejecutando Disparador");
				request.setAttribute("infoBean",info);
				mapping = "SEGURIDAD/aparModulo/apartados.jsp";
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Catalogo Cargado!");
				break;
			case 13:// Cuenta
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Ejecutando Disparador");
				request.setAttribute("infoBean",info);
				mapping = "SEGURIDAD/confModulo/cuenta.jsp";
				System.out.println("SVR.usuarios.doPost.Catalogo----------> Catalogo Cargado!");
				break;
			}

		} catch (Exception error) {
			System.out.println("ChekSesion.doPost---->" + error.getMessage());
			request.setAttribute("mensaje", error.getMessage());
			//mapping = "SEGURIDAD/singIn.jsp";
		}finally{
			request.getRequestDispatcher(mapping).forward(request, response);
		}
	}


}
